Многие этого ждали и это свершилось! В Joomla начиная с версии 3.7, для стандартного контента разработчиками была введена возможность создания дополнительных полей. Более того дополнительные поля можно использовать как для материалов, так и для пользователей сайта.
Для чего нужны поля в Joomla?
Дополнительные поля в Joomla это по большей части это удобство при создании материалов, которые в дальнейшем можно фильтровать по значениям этих самых полей.
В более ранних версиях Joomla было всего три предустановленных поля такие как:
- Основной текст материала
- Изображения (для вступительного текста и полного текста материала)
- Ссылки для перенаправления пользователей (необходимость в данных полях под большим вопросом)
Такого набора стандартных полей большинству веб-разработчиков было не достаточно. Приходилось либо устанавливать дополнительные расширения, так называемые конструкторы контента (к примеру К2), либо изменять код самой CMS. Теперь же необходимость в подобных действиях отпадает сама собой, что не может не радовать.
Для каких сайтов могут потребоваться поля?
Абсолютно для любого сайта поля не будут лишними. Чтобы все стало понятнее, где и как можно применять поля в Joomla, давайте рассмотрим небольшой пример.
К примеру, Вы пишите сайт, который будет продавать книги. Используя предварительно созданные дополнительные поля, Вы сможете забивать в них такие данные как автор, количество страниц, издательство, год выпуска, изображения с примерами страниц и многое другое. А в дальнейшем выводить эти данные в удобной и красивой форме с возможностью фильтрации по ним материалов. Все эти действия можно было бы сделать и по старинке, но этот процесс занял бы больше времени и сил.
Поля для материалов Joomla 3
Если перейти в раздел «Материалы» (или вкладку, кому как удобнее), то в выпадающем списке помимо всего прочего можно обнаружить два новых пункта – «Поля» и «Группы полей». С ними нам и предстоит познакомиться.
Теперь давайте перейдем в раздел «Поля» и посмотрим, что мы имеем.
Тут все стандартно, набор кнопок для манипуляции с полями, список уже созданных полей (в моем случае их нет) и так далее. Теперь давайте создадим новое поле и посмотрим, как его настроить. Жмем кнопку «Создать» и переходим на страницу с несколько странным названием - «Материалы поля: новое».
Страница создания поля не отличается от создания того же материала либо категории, есть поле заголовок который необходимо заполнить, состояние и т.д. Нас же интересует тип поля, другими словами, какое именно поле будет создано.
Виды или типы полей
Количество всевозможных типов, которые можно присвоить новому полю, честно говоря, радует. Их насчитывается 15 штук.
А теперь давайте рассмотрим, какие типы для поля можно назначить:
- SQL запрос
- URL – адрес страницы или сайта
- Группы пользователя
- Календарь
- Медиа
- Переключатель
- Пользователь
- Редактор
- Список
- Список изображений
- Текст
- Текстовое поле
- Флажки
- Цвет
- Целое
Создаем новое поле и пытаемся его настроить. Для примера я создал текстовое поле с именем «Номер урока». На вкладке «Основные» указал, что максимальная длина поля будет равняться трем символам, и сделал это поле обязательным. Кроме того выбрал категорию для которой будет применено данное поле (в других категориях его не будет):
На вкладке «Параметры» заполнил поле Placeholder это своего рода подсказка, которая будет отображаться внутри поля для ввода, и запретил отображение данного поля на сайте (на странице отображения материала). Зачем запретил? Просто оно мне там не нужно, оно пригодиться в дальнейшем для фильтрации материалов на сайте.
С редактированием поля закончили, а теперь давайте откроем один из материалов категории «Основы» (именно для материалов данной категории я создавал поле) и посмотрим, что у нас получилось.
Мы видим, что на странице создания\редактирования материала появилось новое только что созданное поле, которое находится на новой вкладке «Поля». А теперь давайте добавим еще несколько полей и объединим их в группу. Я ограничусь добавлением одного только поля, которому в качестве типа присвою значение «Список».
Создание группы полей
А теперь создадим группу для только что созданных полей. Переходим в раздел «Группы полей» и жмем кнопку «Создать». Сложностей при создании групп никаких нет, нам надо заполнить всего два поля – заголовок и описание. В качестве заголовка пишем название группы (именно оно будет отображаться в качестве названия вкладки), описание используется (по желанию) как подсказка.
Теперь необходимо созданные поля включить во вновь созданную группу. Готово! Осталось лишь проверить результат. Открываем материал для редактирования и наблюдаем примерно следующую картину:
Поля для пользователей
Дополнительные поля для пользователей на сайте создаются точно таким же образом. Они содержат точно такой же набор типов и точно так же группируются.
Новые поля для пользователей будут видны на странице регистрации, а так же когда пользователь захочет изменить свой профиль. На мой взгляд, самым актуальным типом поля для пользователя будет изображение, другими словами возможность загружать своё фото (аватарку). При этом нет необходимости прибегать к дополнительным расширениям.
И напоследок хочу сказать пару слов о способах отображения дополнительных полей на страницах сайта. Всего существует три варианта отображения полей в автоматическом режиме при помощи специальных событий, а так же ручной режим. Более подробно обо всех вариантах читайте в статье «Дополнительные поля и способы их отображения в Joomla 3».